Optical switch and protocols for use therewith

ABSTRACT

A method of establishing a data connection between terminal switching nodes in a network and switching nodes for implementing the method. The method involves switching nodes participating in a network layer wavelength routing (WR) protocol to determine the next hop switching node for every possible combination of terminal nodes based on the network topology. The method also involves the switching nodes participating in a network layer wavelength distribution (WD) once the, data connection is to be established. The WR protocol determines the path used through the network, while the WD protocol assigns wavelengths on each link between switching nodes. The wavelengths may be different on different optical links. The switching nodes include wavelength converters with an optical switch or optoelectronic converters with a digital electronic switch. A digital electronic switch can also provide signal reformatting. Advantages of using potentially different wavelengths along various segments of a single end-to-end connection yields increased wavelength efficiency.

FIELD OF THE INVENTION

The present invention relates to the field of optical switching ingeneral and, more particularly, to optical switching nodes for use in anoptical network. The invention also pertains to protocols governing thebehaviour of the switching nodes.

BACKGROUND OF THE INVENTION

The development of high-capacity networks has been driven by the need toestablish high-bandwidth data connections among remote sites, forinstance, between clients and servers. Most often, the communicationsinfrastructure for such a network is provided by one or morelong-distance carriers serving the geographic region that encompassesthe various remote sites. A carrier may lease fiber optic lines tocustomers wishing to establish high-capacity connections. Within thecarrier's network, optical switching nodes are then configured tosupport the desired connections.

Usually, a carrier leases its fiber optic lines with a view to long-termusage thereof. Thus, switch configurations established at the time ofprovisioning the high-capacity connections are expected to remain inplace for a period of months or years. Therefore, the switches in thenetwork can be configured manually with virtually no impact on cost orquality of service provided.

However, it is not feasible to manually configure a large number ofswitches when dealing with a network whose size and/or topology are inconstant evolution. Furthermore, the manual configuration of switchescannot accommodate situations in which the bandwidth or quality ofservice requirements of the traffic to be transported through thenetwork is time-varying or if there is urgency in establishing newhigh-capacity connections through the network. Although it is desirableto provide switches which are automatically reconfigurable as a functionof changes to the topology and traffic load of the network, such acapability is currently not available.

Moreover, the most common approach to establishing end-to-end dataconnections in current optical networks relies on the utilization of thesame wavelength, say λ_(x), along a manually configured path throughoutthe network. This prevents the establishment of other data connectionsusing λ_(x) as an end-to-end wavelength if part of the pathcorresponding to the new connection intersects part of the pathcorresponding to the original connection. This places a severeconstraint on wavelength usage in a current optical network, with theeffect of drastically reducing the overall bandwidth efficiency in thenetwork.

Thus, it is apparent that there is a need in the industry to provide anoptical switching node which overcomes the above stated disadvantages.

SUMMARY OF THE INVENTION

The invention can be described broadly as a switching node that includesan optical switch fabric, a wavelength conversion unit and a controlunit. The optical switch fabric is connected to the control unit and isused for switching optical signals arriving on a set of input opticalfiber segments over to a set of output optical fiber segments inaccordance with mapping instructions received from the control unit. Thewavelength conversion unit is connected to the optical switch fabric andis used for modifying the wavelengths occupied by incoming or switchedoptical signals in accordance with conversion commands received from thecontrol unit.

The control unit is used for exchanging control information with otherswitching nodes using a network layer protocol and generating themapping instructions and the conversion commands based on this controlinformation. This switching node allows the input and output wavelengthsof an optical data signal to occupy different wavelengths, whichprovides many benefits, among which is included the benefit of increasedwavelength efficiency in an optical network.

Preferably, the control information is exchanged using a out-of-bandcontrol channel such as an optical supervisory channel.

Preferably, the control unit includes a processor and a memory elementaccessible by the processor. The memory element preferably stores arouting table and a wavelength availability table. The routing tablecontains a next hop switching node field associated with every possiblepair of terminal switching nodes. The wavelength availability tablecontains the identity of the switching nodes connected to any of theports by a respective multi-wavelength fiber optic link and, for eachwavelength, an indication of whether that wavelength is occupied oravailable.

The switching node is most often connected to a previous switching nodein a path identified by a first terminal switching node and a secondterminal switching node. In such a scenario, the control unit ispreferably operable to receive messages from the previous switchingnode.

If the message is a so-called CONNECTION_REQUEST message, then thecontrol unit will preferably access the wavelength availability table toidentify an available wavelength on the link between the current andprevious switching nodes, the available wavelength being associated withone of the input optical fiber segments.

If the current switching node is the second terminal switching node,then the control unit will preferably generate mapping commands forestablishing a connection, using the available wavelength, between theinput optical fiber segment associated with the available wavelength andone of the output optical fiber segments; and send a CONNECTION_CONFIRMmessage to the previous switching node.

Otherwise, if the current switching node is not the second terminalswitching node, the control unit will preferably access the routingtable to determine the contents of the next hop switching node fieldassociated with the first and second terminal switching nodes; andforward the CONNECTION_REQUEST message to the switching node identifiedby the next hop switching node field.

If, on the other hand, the message is a so-called CONNECTION_CONFIRMmessage, then the control unit will preferably generate mapping commandsfor establishing a connection using the available wavelength between theinput optical fiber segment associated with the available wavelength andone of the output optical fiber segments; and send a CONNECTION_CONFIRMmessage to the previous switching node.

In order to accommodate a packet-based architecture, in which incomingoptical signals are formed of packets having a header and a payload, theswitching node may include an additional conversion unit connected tothe input optical fiber segments and to the control unit, for extractingthe header of each packet. In this case, the mapping instructions andthe conversion commands generated by the controller will further bedependent on the information contained in the header of each packet.

In another embodiment, the switching node includes a first set ofoptoelectronic converters and a second set of optoelectronic converters.The first set of converters is used for converting input optical signalsoccupying respective wavelengths into electronic signals, while thesecond set of converters is used for converting output electronicsignals into output optical signals occupying respective wavelengths.

The switching node also includes a digital switch fabric connected tothe optoelectronic converters, for switching the input electronicsignals over to the output electronic signals in accordance withswitching instructions. Finally, the switching node includes a controlunit connected to the digital switch fabric and to the optoelectronicconverters. The control unit exchanges control information with otherswitching nodes using a network layer protocol and generates theswitching instructions based on the control information.

In this embodiment, the switching node provides grooming functionalityin the sense that the input electronic signals can be reformatted sothat when these reformatted signals are switched and then converted intoan optical format by the second set of converters, the resulting opticalsignal can be in a desired format. This improves compatibility among enduser equipment in a network.

The invention may be summarized at the network level as a method ofestablishing a data connection between first and second terminalswitching nodes. The network is understood to include the terminalswitching nodes as well as a group of other switching nodesinterconnected by multi-wavelength optical links.

The method includes a first step of identifying a path comprising a setof links and wavelengths for transporting data between the first andsecond terminal switching nodes via zero or more intermediate switchingnodes.

The method also includes the step of, at each intermediate switchingnode connected to a respective ingress link and a respective egress linkin the identified path, switching the optical signals arriving on therespective ingress link over to the respective egress link andperforming wavelength conversion if the wavelengths occupied on therespective ingress and egress links are different. Advantageously, thisallows a data connection to be established using different wavelengthsalong the way.

The invention can also be summarized as a wavelength distributionprotocol for enabling a data connection to be established between afirst terminal switching node and a second terminal switching node viazero or more intermediate switching nodes along a path in a network. Theprotocol is executed at the various switching nodes in the network.

At each current switching node connected in the path between a previousswitching node and/or a next switching node by respective optical links,the protocol includes the capability to receive messages from theprevious or next switching node.

If the message is a CONNECTION_REQUEST message, then if the currentswitching node is not the first terminal switching node, the protocolincludes identifying and storing an available wavelength on the linkbetween the current and previous switching nodes.

Also, if the message is a CONNECTION_REQUEST message and if the currentswitching node is indeed the second terminal switching node, theprotocol includes establishing a connection using the availablewavelength and sending a CONNECTION_CONFIRM message to the previousswitching node, otherwise forwarding the CONNECTION_REQUEST message tothe next switching node.

If, however, the message is a CONNECTION_CONFIRM message, then theprotocol includes establishing a connection using the previously storedavailable wavelength and if the current switching node is not the firstterminal switching node, sending a CONNECTION_CONFIRM message to theprevious switching node.

For the protocol to operate as intended, an initial CONNECTION_REQUESTmessage is assumed to be sent to the first terminal switching node uponinitially requesting the data connection.

By participating in this protocol, switching nodes automaticallyparticipate in the end-to-end establishment of data connections usingdynamically assigned wavelengths, which improves overall bandwidthefficiency of the optical network and provides more flexible protectionswitching, which no longer requires the input and output wavelengths tobe identical.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other aspects and features of the present invention willbecome apparent to persons skilled in the art upon review of thefollowing description of specific embodiments of the invention inconjunction with the accompanying drawings, in which:

FIG. 1 illustrates in schematic form a switching node in accordance withthe preferred embodiment of the present invention;

FIG. 2A shows a possible structure of a wavelength availability tablecreated by the controller in the switching node of FIG. 1;

FIG. 2B shows a possible structure of a routing table created by thecontroller in the switching node of FIG. 1;

FIG. 3 illustrates in schematic form an optical network and a routelinking two switching nodes in the network;

FIG. 4 illustrates in schematic form a switching node in accordance withan alternative embodiment of the present invention;

FIG. 5 shows a flowchart illustrating an inventive wavelength routingprotocol;

FIG. 6 shows a flowchart illustrating an inventive wavelengthdistribution protocol; and

FIGS. 7A and 7B illustrate routing table entries for two switching nodesalong the route in FIG. 3.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

FIG. 1 shows an optical switching node 400 for connection to otherswitching nodes in an optical network. According to the preferredembodiment of the present invention, the switching node 400 comprises aplurality of ports 402, 404, 406, 408 connected externally to arespective plurality of multi-wavelength optical fiber segments 412,414, 416, 418. Optical fiber segments 412, 414, 416, 418 arebidirectional and serve both as ingress and egress links to neighbouringswitching nodes (not shown). Alternatively, multiple optical fibersegments (e.g., one for ingress and one for egress) could connect theswitching node 400 to each of its neighbours.

Optical fiber segments 412, 414, 416, 418 preferably carry data to andfrom the neighbouring switching nodes. Optical fiber segments 412, 414,416, 418 also preferably serve as control links between the neighbouringswitching nodes by using dedicated supervisory wavelengths (known as anoptical supervisory channel). Other ways of establishing control linksto the switching node include the use of dedicated electronic controllines.

Although depicted as having four ports, the switching node 400 can haveany number of ports greater than or equal to two. Also, while opticalfiber segments 412, 414, 416, 418 are intended to be connected betweenports of neighbouring switching nodes, it should be understood that oneor more of the optical fiber segments 412, 414, 416, 418 can be used fortransporting individual or multiplexed optical channels to or fromcustomer premises equipment. In this case, the switching node 400 wouldbe referred to as an add/drop node.

Within the switching node 400, ports 402, 404, 406, 408 are connected torespective directional couplers 432, 434, 436, 438 by respectiveintermediate optical fiber segments 422, 424, 426, 428, intermediateoptical fiber segments 422, 424, 426, 428 are bidirectional andpreferably carry both data and control signals to and from the inside ofthe switching node 400. The directional couplers 432, 434, 436, 438 areknown components which couple two unidirectional multi-wavelengthsignals travelling in opposite directions to a single bidirectionalmulti-wavelength signal.

In one direction, each directional coupler 432, 434, 436, 438 retrievesincoming data and control signals carried on the respective intermediateoptical fiber segment 422, 424, 426, 428 and feeds the incoming signalsso retrieved to a respective optical demultiplexer 452, 454, 456, 458along a respective intermediate optical fiber segment 442, 444, 446,448.

In the opposite direction, outgoing data and control signals are fed tothe directional couplers 432, 434, 436, 438 by a respective opticalmultiplexer 552, 554, 556, 558 along a respective intermediate opticalfiber segment 542, 544, 546, 548. Each directional coupler 432, 434,436, 438 transfers the respective outgoing data and control signals ontothe respective intermediate fiber optic segment 422, 424, 426, 428connected to the respective port 402, 404, 406, 408.

Each optical demultiplexer 452, 454, 456, 458 separates themulti-wavelength optical signal arriving on the respective intermediateoptical fiber segment 442, 444, 446, 448 on the basis of wavelength toproduce a respective set of individual optical signals appearing on arespective plurality of single-wavelength optical fiber segments 462A-D,464A-D, 466A-D, 468A-D.

Although FIG. 1 shows each of the optical demultiplexers 452, 454, 456,458 as being associated with four single-wavelength optical fibersegments, it is to be understood that the number of segments emanatingfrom an optical demultiplexer can correspond to the number ofwavelengths in each multi-wavelength optical signal arriving at therespective optical demultiplexer along the respective intermediateoptical fiber segment 442, 444, 446, 448.

Among the plurality of single-wavelength optical fiber segmentsemanating from each demultiplexer, at least one of these will preferablybe used for transporting control information and the remaining ones willpreferably be used for transporting data to be switched. The transportof control information on a dedicated wavelength between two switchingnodes is known as establishing an “out-of-band” control channel.Alternatively, an “in-band” control channel can be established byembedding a control-laden header within the data transported between twoswitching nodes, e.g., in a header portion.

In the specific case of FIG. 1, single-wavelength optical fiber segments462A, 464A, 466A, 468A provide out-of-band control channels for carryingincoming control information from neighbouring switching nodes. Eachsingle-wavelength optical fiber segment 462A, 464A, 466A, 468A isconnected to a respective optoelectronic converter 472A, 474A, 476A,478A, Each optoelectronic converter 472A, 474A, 476A. 478A converts theoptical control signal on the respective single-wavelength optical fibersegment 462A, 464A, 466A, 468A into an electronic control signal on arespective input control line 482A, 484A, 486A, 488A. Input controllines 482A, 484A, 486A, 488A are connected to a controller 490.

The remaining sets single-wavelength optical fiber segments 462B-D,464B-D, 466B-D, 468B-D carry incoming data and each set is fed to arespective bank of controllable wavelength converters 472B-D, 474B-D,476B-D, 4782-D. Each wavelength converter 472B-D, 474E-D, 4762-D, 478B-Dis a device which translates the optical signal on the respectivesingle-wavelength optical fiber segment 462B-D, 464B-D, 466B-D, 468B-Dfrom its present wavelength onto a (possibly different) wavelengthspecified by a control signal sent by the controller 490 along arespective control line (not shown)

It should be appreciated that wavelength conversion as performed by thewavelength converters 472B-D, 474B-D, 476B-D, 478B-D could be achievedvia direct optical methods or by conversion into the electronic domain,followed by conversion back into the optical domain on another specifiedwavelength.

The signals converted by each bank of wavelength converters 472B-D,474B-D, 476B-D, 478B-D appear on a respective set of single-wavelengthinput optical fiber segments 462B′-D′, 464B′-D′, 466B′-D′, 468B′-D′which are fed to respective input ports of an optical switch fabric 492.

The optical switch fabric 492 also has a plurality of output portsconnected to a respective plurality of single-wavelength output opticalfiber segments 562B-D, 564B-D, 566B-D, 568B-D. The optical switch fabric492 comprises circuitry for controllably establishing one-to-one opticalconnections between single-wavelength input optical fiber segments462B′-D′, 464B′-D′, 466B′-D′, 468B′-D′ and single-wavelength outputoptical fiber segments 562B-D, 564B-D, 566B-D, 568B-D. The dataconnections are established on the basis of mapping instructionsreceived from the controller 490 via a control line 494.

Those skilled in the art will appreciate that because the variousintermediate optical fiber segments 442, 444, 446, 448, 542, 544, 546,548 may accommodate differing numbers of wavelengths, the number ofsingle-wavelength output optical fiber segments connected to the opticalswitch fabric 492 may differ from the number of single-wavelength inputoptical fiber segments connected thereto.

It will also be understood that the banks of wavelength converters couldbe connected to the single-wavelength output optical fiber segments562B-D, 564B-D, 566B-D, 568B-D at the output of the optical switchfabric 492 rather than to the single-wavelength input optical fibersegments 462B′-D′, 464B′-D′, 466B′-D′, 468B′-D′ at the input of theoptical switch fabric 492.

A plurality of output control lines 582A, 584A, 586A, 588A emanatingfrom the controller 490 form part of the respective out-of-band controlchannels linking the switching node 400 to neighbouring switching nodes.The output control lines 582A, 584A, 586A, 588A are respectivelyconnected to a plurality of optoelectronic converters 572A, 574A, 576A,578A, The optoelectronic converters 572A, 574A, 576A, 578A convertelectronic control signals output by the controller 490 into opticalsignals appearing on respective single-wavelength optical fiber segments562A, 564A, 566A, 568A.

Each single-wavelength optical fiber segment 562A, 564A, 566A, 568Acarrying outgoing control information from the controller 490 isconnected to a respective one of the optical multiplexers 552, 554, 556,558. Also leading to the optical multiplexers 552, 554, 556, 558 arerespective sets of single-wavelength output optical fiber segments562B-D, 564B-D, 566B-D, 568B-D carrying switched signals (i.e., outgoingdata) from the optical switch fabric 492. The optical multiplexers 552,554, 556, 558 combine the individual optical signals carried byrespective groups of single-wavelength optical fiber segments 562A-D,564A-D, 566A-D, 568A-D into respective multi-wavelength optical signalscarried to respective directional couplers 432, 434, 436, 438 byrespective intermediate optical fiber segments 542, 544, 546, 548.

The controller 490 preferably comprises a processor 490A connected to amemory element 490B. The processor 490A is preferably a micro-processorrunning a software algorithm. Alternatively, the processor could be adigital signal processor or other programmable logic device.

The memory element 490B stores wavelength availability information inthe form of a wavelength availability table. FIG. 2A shows the structureof a wavelength availability table 700 in accordance with the preferredembodiment of the present invention. The wavelength availability table700 comprises a PORT column 710, a WAVELENGTH column 720 and anAVAILABILITY column 730. The PORT column 710 contains one entry for eachport in the switching node. In the case of the switching node 400 inFIG. 1, the number of ports, and therefore the number of entries in thePORT column 710 of the wavelength availability table 700, is equal tofour. The ports are identified by their reference numerals from FIG. 1,namely 402, 404, 406 and 408.

For each row corresponding to a given port, there may be multipleentries in the WAVELENGTH column 720, depending on the number ofwavelengths that can enter or exit the switching node through that port.For example, in the case of the switching node 400 in FIG. 1, there aresix entries in the WAVELENGTH column 720 corresponding to each of theports 402, 404, 406, 408. For each entry in the WAVELENGTH column 720,there is an entry in the AVAILABILITY column 730 indicating whether ornot the corresponding wavelength is currently occupied on thecorresponding port. A binary value is adequate for representing eachentry in the AVAILABILITY column 730.

The memory element 490B also stores topological information about thenetwork. Specifically, the memory element 490B stores the identity ofthose switching nodes which are directly connected to switching node 400via one of the optical fiber segments 412, 414, 416, 418. The memoryelement 490B also stores similar topological information about the restof the network, which is transmitted to the switching node 400 by theneighbouring switching nodes. The processor 490A in the switching node400 uses topological information stored in the memory element 490B toconstruct a topological tree of the entire network with the switchingnode 400 as the root. This tree is then used by the processor 490A toconstruct a routing table which is also stored in the memory element490B.

FIG. 2B illustrates the format of a routing table 600 in accordance withthe preferred embodiment of the invention. The routing table 600preferably contains four fields, namely a source switching node (SSN)field 610, a destination switching node (DSN) field 620, a trafficcharacteristic information (TCI) field 630 and a next hop switching node(NHSN) field 640.

The entries in the SSN and DSN fields 610, 620 account for everypossible combination of end switching nodes in the network. The TCIfield 630 contains the traffic characteristic information received fromthe switching node identified by the entry in the DSN field 620 of thecorresponding row in the routing table. In this way, the TCI field 630identifies the signalling formats acceptable by the respective opticalinterface in each destination switching node.

Typically, it will not be possible to send data from a source switchingnode to a destination switching node without passing through at leastone intermediate switching node. Thus, the switching node 400 willgenerally be one in a series of intermediate switching nodes locatedbetween source and destination. The next intermediate node along theroute leading to the destination switching node is known as the next hopswitching node and is identified in the NHSN field 640 of the routingtable. The next hop switching node is a function of the source switchingnode, the destination switching node, the network topology and theposition of the current switching node within that topology. Thus, therouting table is different for each switching node in the network and isbasically static, changing only when the network undergoes a topologicalalteration.

In operation, the manner in which control information is communicatedand interpreted by the various switching nodes in the network isgoverned by a network-layer wavelength routing (WR) protocol. Anend-to-end path for transferring data from a source switching node to adestination switching node along a path in a network can be establishedby having each switching node participate in a network-layer wavelengthdistribution (WD) protocol. Both protocols are now described.

The WR protocol is implemented by having the processor in each switchingnode run an algorithm such as the one illustrated in the flowchart ofFIG. 5. Specifically, FIG. 5 depicts an information propagation step1010, an information storing step 1020 and an information processingstep 1030.

Firstly, the propagation step 1010 consists of the controller 490sending topology information and traffic characteristic information toneighbouring switching nodes via the appropriate control channel (eitherout-of-band or in-band). The topology information includes the identityof the switching node 400 and the identity of each switching nodeadjacent the switching node 400 and connected to one of its ports. Thetraffic characteristic information may consist of a listing ofsignalling types that are acceptable to each port. The contents of thislisting may be governed by end user formatting requirements.

In addition, as another part of the propagation step 1010, the switchingnode 400 relays control information received from any neighbouringswitching node to all other neighbouring switching nodes. The controlinformation sent by the switching node 400 can be transmitted at regularintervals of, for instance, ten seconds or, alternatively, only whenthere is a change in the received control information.

It is noted that because each switching node forwards not only its owncontrol information but also that of its immediate neighbours, everyswitching node is recursively made aware of the topology of the entirenetwork and of the acceptable signalling types associated with eachswitching node in the network.

The storing step 1020 consists of the controller 490 storing, in thememory element 490B, its own topology and traffic characteristicinformation as well as that received from neighbouring switching nodes.

Finally, the processing step 1030 consists of the controller 490 in theswitching node 400 generating the routing table stored in the memoryelement 490B, either periodically or after a topology change, as afunction of the network topology information and traffic characteristicinformation stored in the storing step 1020. With reference to therouting table shown in FIG. 2B, in order to fill the NHSN field 640 fora particular row in the routing table 600, the software in the processorof the switching node executes a next hop routing algorithm, for examplethe well-known Dijkstra algorithm. (See J. Moy, Network Working GroupRFC 1583, pp. 142-160, hereby incorporated by reference herein). If theDijkstra algorithm produces no suitable next hop switching node for agiven row in the routing table 600, this fact can be signalled byleaving blank the corresponding entry in the NHSN and TCI fields 630,640, respectively.

The WD protocol is implemented by the processor in each switching noderunning an algorithm such as the one illustrated in the flowchart ofFIG. 6. The inventive wavelength distribution (WD) protocol consists ofthe exchange and interpretation of several types of messages, includingan INITIAL_CONNECTION_REQUEST message, a CONNECTION_REQUEST message, aCONNECTION_CONFIRM message and a CONNECTION_DENY message.

Referring to the flowchart in FIG. 6 and, more specifically, to step1610, the processor in a given switching node waits to receive amessage. Upon receipt of a message the processor verifies, at step 1620,whether it is an INITIAL_CONNECTION_REQUEST message. AnINITIAL_CONNECTION_REQUEST message is typically generated by customerpremises equipment connected to the source switching node, for example.

If the received, message is indeed an INITIAL_CONNECTION_REQUESTmessage, then it will specify the source and destination switchingnodes, as well as the signalling format (say, TCI_(S)) used by theinterface connected to the source switching node. At step 1630, theprocessor verifies whether TCI_(S) matches any one of the signallingformats accepted by the interface connected to the destination switchingnode. If there is no TCI match, then the source switching node customeris informed that a connection cannot be established.

On the other hand, if there is a TCI match, then the processor looks upthe entry in the NHSN field of the row of the routing table associatedwith the source and destination switching nodes and subsequently sends aCONNECTION_REQUEST message to the switching node identified by thatentry. The CONNECTION_REQUEST message preferably contains a SSNparameter for identifying the source switching node and a DSN parameterfor identifying the destination switching node. The intended recipientof the CONNECTION_REQUEST message is also known as the “next” switchingnode along the route between the source and destination nodes.

The message found to be received at step 1620 might not be anINITIAL_CONNECTION_REQUEST message, but may be a CONNECTION_REQUESTmessage (such as the one sent by the source switching node after anINITIAL_CONNECTION_REQUEST message). The CONNECTION_REQUEST message isassumed to be received by the current switching node from a “previous”switching node along the route between the source and destinationswitching nodes.

In the event that a CONNECTION_REQUEST message was received, step 1640provides verifyication of whether there is a free wavelength between theprevious switching node and the current switching node. If there is nosuch wavelength, then the processor causes a CONNECTION_DENY message tobe sent to the previous switching node, as indicated at step 1650.

On the other hand, if there is a free wavelength, then step 1660consists of storing this free wavelength in the memory element connectedto the processor in the current switching node. This is followed by step1670, at which it is verified whether the current switching node is infact the destination switching node. If not, then, as indicated by step1680, the CONNECTION_REQUEST message is forwarded to the next switchingnode along the route.

If, however, the current switching node is indeed the destinationswitching node, then step 1690 involves the establishment of a dataconnection through the optical switch fabric of the current switchingnode. This can be achieved by the controller 490 providing anappropriate mapping instruction to the optical switch fabric 492. Thisconnection links the single-wavelength optical fiber associated with thefree wavelength (as stored in the memory element after execution of step1660) and the optical fiber segment leading to the customer premisesequipment connected to the destination switching node.

If the wavelength occupied by the customer premises equipment isdifferent from the free wavelength stored in the memory element, thenappropriate instructions must also be sent to the wavelength converterassociated with the free wavelength. Furthermore, the wavelengthavailability table is updated to reflect that the “free” wavelength isno longer available on the corresponding port linking the currentswitching node with the previous switching node.

After a connection has been established, step 1700 indicates that aCONNECTION_CONFIRM message is sent to the previous switching node, whichis now optically connected to the current switching node by the freewavelength. The CONNECTION_CONFIRM message specifies the freewavelength.

Returning now to step 1620, if the received message is a CONNECTION_DENYmessage, then as indicated at step 1730, the action to be taken dependson whether the current switching node is the source switching node. Ifthe current switching node is not the source switching node, then theCONNECTION_DENY message is backwarded to the previous switching node asindicated at step 1650. Thus, the CONNECTION_DENY message eventuallyreaches the source switching node where, according to step 1740, thecustomer is alerted to the fact that a connection cannot be established.

Finally, if the message found to be received at step 1620 is aCONNECTION_CONFIRM message, then the action to be taken again depends onwhether the current switching node is the source switching node asindicated at step 1710. If the current switching node is indeed thesource switching node, then a connection is established (step 1720)between the optical fiber segment connected to the customer premisesequipment and the single-wavelength optical fiber segment carrying databetween the source switching node and the next switching node.

Otherwise (step 1690), a connection is established which joins thesingle-wavelength optical fiber segment carrying data between thecurrent switching node and the previous and next switching nodes. Inaddition, the locally stored wavelength availability table is alsoupdated to reflect the new wavelength occupancy on the optical fibersegment carrying data between the current switching node and theprevious and next switching nodes. If necessary, wavelength conversioninstructions are sent in either case to the appropriate wavelengthconverter. As shown at step 1700, a CONNECTION_CONFIRM message issubsequently sent to the previous switching node.

An example illustrating how an end-to-end connection is prepared usingthe WD protocol is now described with reference to FIG. 3, which showsan optical network 800 comprising a plurality of switching nodes 802-824connected in a meshed matrix pattern via a plurality of optical fibersegments 826-858. Switching node 802 is connected to customer premisesequipment (CPE) 860 via an optical fiber segment 862 which uses awavelength λ_(S). The CPE 860 uses a signalling format which may bedenoted TCI_(S). Switching node 824 is connected to CPE 864 via anoptical fiber segment 866 which uses a wavelength λ_(F). The CPE 864accepts signalling formats which may be identified by the set {TCI_(F)}.

The switching nodes 802-824 participate in the inventive WR protocol.Thus, a routing table will be generated at each switching node. Thisrouting table is different for each switching node but is static untilthe topology of the network changes. For purposes of illustration andwithout loss of generality, FIG. 7A shows part of a routing table 900generated at switching node 802 corresponding to the row in which thesource switching node is designated as switching node 802 and thedestination switching node is designated as switching node 824.Specifically, the entry in the TCI column 630 indicates that the CPR 864connected to switching node 824 is capable of receiving data in thelisted formats, namely OC-4, OC-32, OC-192 and Gigabit Ethernet (GBE).The entry in the NHSN column 640 indicates that the next hop switchingnode in the route joining switching nodes 802 and 824 is switching node808.

Similarly, FIG. 7B shows an example row from a routing table 950 storedin the memory element of switching node 808. This row again correspondsto the source-destination combination involving switching nodes 802 and824, respectively. Of course, the routing table 950 is generated fromthe perspective of switching node 808 and therefore the entries in theNHSN column 640 will be different from those in the routing table 900stored in switching node 802. In the example of FIG. 7B, the entry inthe NHSN column 640 specifies switching node 810. Similarly, thecorresponding entry in the NHSN column 540 in the routing tables storedin switching nodes 810, 816 and 818 can specify switching node 816, 818and 824, respectively.

Thus, a potential route exists between switching node 802 and 824,consisting of optical fiber segments 830, 836, 842, 848 and 854 asindicated by the thick solid line in FIG. 3. Similarly, potential routesexist between all other combinations of source switching node anddestination switching node.

The messaging scheme of the WD protocol is now illustrated withcontinued reference to the network of FIG. 3 and the flowchart of FIG.6. Firstly, the desire to establish an end-to-end data connectionbetween CPE 860 and CPE 864 is signalled to the source switching node802 in any suitable way. That is to say, an INITIAL_CONNECTION_REQUESTmessage is received by switching node 802.

In accordance with the WD protocol (at step 1630), switching node 802compares the signalling format of CPE 860, namely TCI_(S), to the set ofacceptable signalling formats associated with CPE 864, namely the set{TCI_(F)}. If a TCI match is detected, then the processor in the sourceswitching node 802 consults its routing table (FIG. 7A) and extracts theidentity of the switching node in the NHSN field of the rowcorresponding to the particular source-destination switching nodecombination. In this case, the switching node so identified would beswitching node 808. (It should be noted that if TCI_(S) is not anelement of the set {TCI_(F)}, then the connection request is denied. Asindicated in step 1740 of FIG. 6, the controller in the source switchingnode 802 may take action to alert the end user that the connectionrequest has been denied.)

The processor in the source switching node 802 then formulates aCONNECTION_REQUEST message for transmission to switching node 808 (step1680). The CONNECTION_REQUEST message identified switching node 802 asthe source switching node and switching node 824 as the destinationswitching node. The CONNECTION_REQUEST message is transmitted by thesource switching node 802 to switching node 808 via the appropriateout-of-band or in-band control channel.

In accordance with step 1640 of FIG. 6, switching node 808 consults itswavelength availability table to determine whether there is a freewavelength on the fiber optic segment 830 linking it to the previousswitching node, in this case source switching node 802. Consequently,either a wavelength is found, in which case the wavelength request isfurther propagated along the route by forwarding a copy of theCONNECTION_REQUEST message to switching node 810 (step 1680), or awavelength is not found, in which case the connection request is deniedand a CONNECTION_DENY message is sent back to the source switching node802 (step 1650). In this case, since switching node 808 is not thedestination switching node 824, a connection is not yet established.

If sent, the CONNECTION_DENY message is of a suitable format indicatingthat the connection request has been denied and the reasons therefor, inthis case, an inability to find an available wavelength on fiber opticsegment 830. According to steps 1730 and 1740 of FIG. 6, upon receipt ofa CONNECTION_DENY message, the controller in the source switching node802 may take action to alert the end user of CPE 860 that the connectionrequest has been denied.

Each of the switching nodes 810, 816, 818 runs the same algorithm andtherefore performs essentially the same tasks as switching node 808.Hence, if wavelengths are available on each of fiber optic segments 836,842 and 848, the CONNECTION_REQUEST message Will eventually be receivedat the destination switching node 824. Similarly, a CONNECTION_DENYmessage returned to an one of the switching nodes 810, 816, 818 isrelayed back to the source switching node 802, where action can be takento alert the end user that a connection request has been denied.

Assuming that TCI_(S) belongs to the set {TCI_(F)} and that a suitablewavelength path is available, the CONNECTION_REQUEST message transmittedby the source switching node 802 will eventually reach the destinationswitching node 824 via “intermediate” switching nodes 808, 810, 816 and818. Since it is identified by the DSN parameter in theCONNECTION_REQUEST message, the destination switching node 824 knowsthat it is the last switching node on the potential route leading fromthe source switching node 802. In the example scenario of FIG. 3, thefinal destination is CPE 864 which is connected to the destinationswitching node 824 via optical fiber segment 866 adapted to carryoptical signals on wavelength λ_(F). In response to theCONNECTION_REQUEST message, the processor in the destination switchingnode 824 attempts to find a free wavelength on optical fiber segment 854connecting the destination switching node 824 with intermediateswitching node 818.

If such a wavelength is found, say λ_(I), then a data connection isestablished (step 1720). Specifically, the controller sends mappinginstructions to its optical switch fabric for switching the opticalsignal on the single-wavelength input optical fiber segment associatedwith λ_(I) over to the optical fiber segment 866 leading to the customerpremises equipment 864. In addition, the controller sends the value ofthe wavelength λ_(F) to the wavelength converter associated with thesingle-wavelength input optical fiber segment carrying the opticalsignal on wavelength λ_(I). If λ_(I) is different from λ_(F), thatwavelength converter will be required to perform wavelength conversion.Furthermore, the destination switching node 824 updates its wavelengthavailability table with information about the newly established dataconnection. That is to say, the entry in the AVAILABILITY field 730 ofthe appropriate row is given a value indicating the fact that wavelengthλ_(I) on optical fiber segment 854 is taken, i.e., unavailable.

After instructing its optical switch fabric to set up a data connection,the WD protocol as described at step 1700 in FIG. 7 requires that thedestination switching node 824 send a CONNECTION_CONFIRM message to theintermediate switching node 818. The CONNECTION_CONFIRM messagespecifies the wavelength λ_(I), which is the wavelength (prior towavelength conversion) associated with the single-wavelength inputoptical fiber segment connected through the optical switch fabric in thedestination switching node 824.

Upon receipt of the CONNECTION_CONFIRM message sent by the destinationswitching node 824, intermediate switching node 818 itself establishes aconnection between the single-wavelength output optical fiber whosesignal at wavelength λ_(I) is carried on optical fiber segment 854 andthe single-wavelength input optical fiber 848 whose signal at thepreviously stored free wavelength (say, λ_(J)) is carried on opticalfiber segment 848. If λ_(I) does not equal λ_(J), then the correspondingwavelength converter is instructed to perform the appropriate wavelengthconversion. The controller in intermediate switching node 818 thenupdates its wavelength availability table and subsequently sends aCONNECTION_CONFIRM message to intermediate switching node 816. Thismessage will specify λ_(J) (rather than λ_(I) or λ_(F)).

Backtracking of the CONNECTION_CONFIRM message continues until thismessage is received at the source switching node 802. According to step1720 of the algorithm described with reference to FIG. 7, the controllerin the source switching node 802 sends mapping instructions to itsoptical switch fabric with the aim of establishing a connection betweenthe optical fiber segment 862 occupying wavelength λ_(S) connected toCPE 860 and the single-wavelength optical fiber segment whose signal iscarried on a wavelength λ_(K) by optical fiber segment 830. If λ_(K)differs from λ_(S), wavelength conversion commands are sent to thewavelength converter associated with optical fiber segment 862.

From the above, it is seen that the route between the source anddestination switching nodes 802, 824 consisting of optical fibersegments 830, 836, 842, 848, 854 may occupy different wavelengths. As aresult of topology and traffic characteristic information exchangedautomatically by virtue of the various switching nodes participating inthe WR protocol, the just described wavelength-distribution (WD)protocol allows wavelengths to be assigned to specific optical fibersegments in a dynamic fashion each time a new connection is requested.Consequently, the available network bandwidth is used more efficientlyand the time, effort and cost involved in configuring the switchingnodes in the network are dramatically reduced.

While the above description of the WD protocol has dealt with the casein which a source switching node wishes to unilaterally send data to adestination switching node, the present invention also applies to thecase in which one switching node wishes to extract data from another. Inthis reverse unidirectional situation, it is more appropriate to callthe two end switching nodes “client” (wishing to receive data) and“server” (transmitting the data to the client) switching nodes.

Considering the example network and proposed route shown in FIG. 3, itcan be assumed that the client is connected to switching node 802 andthat the server is connected to switching node 824. The client 802 isconnected to CPE 860 via an optical fiber segment 862, while the server824 is connected to a data base 864 via an optical fiber segment 866.The above-described WR protocol remains the mechanism by which thevarious switching nodes in the network exchange and process controlinformation. However, to accommodate the transfer of data from server824 to client 802 (which is in the opposite direction to the data flowin the previously described source-destination example), the WD protocolis slightly modified.

Specifically, step 1630 in FIG. 6 (in which a TCI comparison is to beperformed) may not be executable at the client switching node since thesignalling type transmitted by the server may not be known. Therefore,this step must be postponed until a CONNECTION_REQUEST message isreceived at the server switching node, whereupon this step is performedby the server switching node.

It should also be understood that although route selection is achievedby the switching nodes executing a routing control algorithm, it ispossible for the source switching node or client to preselect thedesired route through the network for particular combinations of endpoints. In other words, the NSHN entries in the routing table in eachswitching node can be pre-computed. Manual route pre-selection is alsoacceptable as there are advantages to be gained by having thewavelengths dynamically assigned along each segment in the route inaccordance with the WD protocol. Thus, the WR protocol could simply beused for distributing and gathering traffic characteristic information,while omitting the processing step.

It is also within the scope of the invention to provide a bidirectionaldata connection between two end switching nodes. Wavelength allocationfor one direction of communication can follow the algorithm in the abovesource-destination scenario, while wavelength allocation for the reversedirection can follow the algorithm in the above-described client-serverscenario.

Moreover, the invention extends to certain cases in which the signallingtypes at the end points do not match but are “compatible”. For example,if the destination switching node accepts OC-48 signals but the sourceswitching node transmits OC-12 signals, then either the end switchingnodes or one of the intermediate switching nodes along the route betweenthe two end switching nodes can be assigned the task of grooming theOC-12 signals so that they become OC-48 signals. In this case, OC-48 andOC-12 signalling types are said to be compatible.

Accordingly, the WD protocol can be modified so that a CONNECTION_DENYmessage is sent if all wavelengths are unavailable or if TCI_(S) isincompatible with every element of the set {TCI_(F)}. Within eachswitching node, compatibility may be determined by consulting a table ofcompatible pairs of signalling types which can be stored in therespective memory element.

In order to provide the desired grooming functionality, it is necessaryto modify the design of the switching node. FIG. 4 shows a switchingnode 900 in accordance with an alternative embodiment of the presentinvention. Switching node 900 is identical to switching node 400, exceptfor certain differences which are now explained.

Switching node 900 comprises groups of optoelectronic converters 902B-D,904B-D, 906B-D, 908B-D connected between respective demultiplexers 452,454, 456, 458 and a grooming processor and switch 992. Converters902B-D, 904B-D, 906B-D, 908B-D are used for converting received opticaldata signals on respective single-wavelength input optical fibers462B-D, 464B-D, 466B-D, 468B-D into electrical signals fed to thegrooming processor 992. Analog-to-digital converters (not shown) arepreferably provided between the optoelectronic converters 902B-D,904B-D, 906B-D, 908B-D and the grooming processor and switch 992.

The grooming processor and switch 992 is preferably a high-speed digitalsignal processor which is programmed to convert digital electronicsignals from one signalling type to another. The grooming processor andswitch 992 also provides a digital cross-connect facility for connectingeach groomed electronic signal to any one of a plurality of electronicsignal lines 962B-D, 964B-D, 966B-D, 968B-D.

Groups of electronic signal lines 962B-D, 964B-D, 966B-D, 968B-D areconnected to respective optical multiplexers 552, 554, 556, 558 viarespective, groups of optoelectronic converters 972B-D, 974B-D, 976B-D,978B-D. The optoelectronic converters convert the respective electronicsignals into optical signals at a wavelength controllable from thecontroller 490 via respective control lines (not shown). For thisreason, wavelength converters are not explicitly required in the designof the switching node in FIG. 4, since their functionality is implicitin the optoelectronic converters 972B-D, 974B-D, 976B-D, 978B-D.

In accordance with another embodiment of the present invention, theswitching nodes in FIGS. 1 and 4 and the WR and WD protocols governingtheir behaviour can be used to implement a reliable protection facilityin a meshed network. More specifically, if a data connection isestablished over a particular fiber optic link and if that link fails,then a new data connection request can be initiated by the sourceswitching node. Since each switching node participates in the WRprotocol, the change in the topology of the network resulting from thebroken link will automatically result in different values for the NHSNcolumn in the respective routing tables.

Those skilled in the art will appreciate that a new connection requestcan be programmed to occur after a failure is detected, which request ishandled by the WD protocol of the present invention, resulting in a newand reliable route for the originally disrupted data connection. Furtheradvantages of relying on the WR and WD protocols described hereininclude wavelength efficiency, since protection wavelengths need not bededicated in advance, as well as independent re-routing for differentwavelengths occupied by a single optical fiber segment. This latterfeature is advantageous because it allows the protection of individualwavelengths wherever there is capacity in the network.

According to yet another alternative embodiment of the invention, theremay be provided an all-optical switching fabric similar to the switchfabric 492 in FIG. 1. However, instead of mapping each single-wavelengthinput optical fiber segment to one single-wavelength output opticalfiber segment for the duration of a data connection, the switch fabriccan be made responsive to switching instructions for a particular inputoptical signal that vary as a function of time.

This functionality can be useful in situations where the nature of theinput optical signal is packet-based, with each packet having a headerportion and a payload portion. The header may identify the source anddestination switching nodes. Although different packets share the samewavelength and the same single-wavelength optical fiber segment, theirassociated headers may indicate an entirely different source and/ordestination.

In this alternative embodiment of the invention, the switching nodecould thus comprise a bank of optical taps (e.g., PIN diodes) connectedto the single-wavelength input optical fiber segments. These taps wouldbe connected to optoelectronics converters, which would all be connectedto the controller. The header of each incoming packet could thus be readand processed by the controller.

In operation, the wavelength routing (WR) protocol functions aspreviously described. Furthermore, once a data connection request ismade, in which a respective source-destination pair is identified, aspecific set of mapping instructions and wavelength conversion commandsare generated using the wavelength distribution (WD) protocol, based onthe network topology.

In this case, however, an additional step is performed before mappingthe single-wavelength input optical fiber segment to thesingle-wavelength output optical fiber segment in order to establish aparticular data connection. Specifically, the header of each packet onthe input optical fiber segment is examined. It is only if the sourceand destination specified in the header match the source-destinationpair for which a connection has been prepared using the WD protocol thatthe previously derived mapping instructions and wavelength conversioncommands are used.

Of course, it is also within the scope of the invention to allowmultiple mappings to be associated with each single-wavelength inputoptical fiber segment, with a single mapping being applied for eachpacket, depending on the source and destination switching nodesspecified in the header.

While preferred and alternative embodiments of the present inventionhave been described and illustrated, it will be understood by thoseskilled in the art that further variations and modifications arepossible while remaining within the scope of the invention as defined inthe appended claims.

1.-29. (canceled)
 30. A method of determining paths through an opticalnetwork comprising a plurality of interconnected optical switchingnodes, the method comprising, at a switching node of the opticalnetwork: communicating topology information to neighbouring switchingnodes; receiving topology information from the neighbouring switchingnodes; sending the topology information received from the neighbouringswitching nodes to the neighbouring switching nodes; processing thetopology information using a routing algorithm to determine a next hopfor each of a plurality of paths through the network, each pathcomprising a set of optical channels, each optical channel on arespective optical communication link between adjacent switching nodeson the path; and storing in a routing table, the next hop determined foreach of the plurality of paths.
 31. The method of claim 30, comprising,at each switching node: communicating traffic characteristic informationto neighbouring network nodes; receiving traffic characteristicinformation from neighbouring network nodes; and sending the trafficcharacteristic information received from the neighbouring switchingnodes to the neighbouring switching nodes.
 32. The method of claim 31,wherein the traffic characteristic information comprises a list ofsignalling types that are acceptable to each port.
 33. The method ofclaim 30, wherein the topology information is communicated at regulartime intervals.
 34. The method of claim 30, wherein the trafficcharacteristic information is communicated at regular time intervals.35. The method of claim 30, wherein the topology information iscommunicated when there are topology changes.
 36. The method of claim31, wherein the traffic characteristic information is communicated whenthere are topology changes.
 37. The method of claim 30, wherein thetopology information is communicated over an in-band control channel.38. The method of claim 30, wherein the topology information iscommunicated over an out-of-band control channel.
 39. The method ofclaim 31, wherein the traffic characteristic information is communicatedover an in-band control channel.
 40. The method of claim 31, wherein thetraffic characteristic information is communicated over an out-of-bandcontrol channel.
 41. The method of claim 30, wherein the routingalgorithm comprises a Dijkstra algorithm.
 42. The method of claim 30,wherein the routing algorithm determines a respective path for each pairof switching nodes that comprises a source switching node and adestination switching node.
 43. The method of claim 30, wherein eachoptical channel comprises a wavelength channel operating at respectiveoptical wavelength.
 44. The method of claim 43, wherein at least some ofthe switching nodes comprise wavelength converters operable to convertoptical signals from one optical wavelength to another opticalwavelength.